/**
 * 日期格式化工具
 */

/**
 * 格式化日期为字符串
 * @param date 日期对象或日期字符串
 * @param format 格式化字符串，默认为 'YYYY-MM-DD'
 * @returns 格式化后的日期字符串
 */
// export function formatDate(date: Date | string, format: string = 'YYYY-MM-DD'): string {
//     if (!date) return '';
//
//     // 如果是字符串，转换为日期对象
//     const dateObj = typeof date === 'string' ? new Date(date) : date;
//
//     // 如果日期无效，返回空字符串
//     if (isNaN(dateObj.getTime())) return '';
//
//     const year = dateObj.getFullYear();
//     const month = dateObj.getMonth() + 1;
//     const day = dateObj.getDate();
//     const hours = dateObj.getHours();
//     const minutes = dateObj.getMinutes();
//     const seconds = dateObj.getSeconds();
//
//     // 替换格式化字符串中的占位符
//     return format
//         .replace('YYYY', year.toString())
//         .replace('MM', month.toString().padStart(2, '0'))
//         .replace('DD', day.toString().padStart(2, '0'))
//         .replace('HH', hours.toString().padStart(2, '0'))
//         .replace('mm', minutes.toString().padStart(2, '0'))
//         .replace('ss', seconds.toString().padStart(2, '0'));
// }

/**
 * 格式化金额
 * @param amount 金额数值
 * @param decimals 小数位数，默认为2
 * @param separator 千位分隔符，默认为','
 * @returns 格式化后的金额字符串
 */
// export function formatAmount(amount: number | string, decimals: number = 2, separator: string = ','): string {
//     if (amount === null || amount === undefined) return '';
//
//     // 转换为数字
//     let num = typeof amount === 'string' ? parseFloat(amount) : amount;
//
//     // 如果数字无效，返回原值
//     if (isNaN(num)) return amount.toString();
//
//     // 格式化小数位
//     const formattedNum = num.toFixed(decimals);
//
//     // 添加千位分隔符
//     const parts = formattedNum.split('.');
//     parts[0] = parts[0].replace(/\B(?=(\d{3})+(?!\d))/g, separator);
//
//     return parts.join('.');
// }

/**
 * 格式化百分比
 * @param value 数值
 * @param decimals 小数位数，默认为2
 * @returns 格式化后的百分比字符串
 */
// export function formatPercent(value: number | string, decimals: number = 2): string {
//     if (value === null || value === undefined) return '';
//
//     // 转换为数字
//     let num = typeof value === 'string' ? parseFloat(value) : value;
//
//     // 如果数字无效，返回原值
//     if (isNaN(num)) return value.toString();
//
//     // 格式化为百分比
//     return `${(num * 100).toFixed(decimals)}%`;
// }